﻿#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
//int main()
//{
//	int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
//	int i = 1;
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	int* p = &arr[0];
//	for (i = 0; i < sz; i++)
//	{
//		printf("%d ", *(p + i));
//	
//	}
//	return 0;
//}
//void pirnt(int arr[3][5], int r, int c)
//{
//	int i = 0;
//	for (i = 0; i < r; i++)
//	{
//		int j = 0;
//		for (j = 0; j < 5; j++)
//		{
//			printf("%d ", arr[i][j]);
//		}
//		printf("\n");
//	}
//}
//int main()
//{
//	int arr[3][5] = { {1,2,3,4,5},{2,3,4,5,6},{3,4,5,6,7} };
//	pirnt(arr,3,5);//将arr数组的内容打印出来
//	return 0;
//}
//void pirnt(int (*arr)[5], int r, int c)
//{
//	int i = 0;
//	for (i = 0; i < r; i++)
//	{
//		int j = 0;
//		for (j = 0; j < 5; j++)
//		{
//			printf("%d ", *(*(arr + i)+j));//*(arr + i) == arr[i]
//			//arr[i]是第i行的数组名，数组名又表示数组首元素的地址，arr[i]表示是&arr[i][0]
//		}
//		printf("\n");
//	}
//}
//int main()
//{
//	int arr[3][5] = { {1,2,3,4,5},{2,3,4,5,6},{3,4,5,6,7} };
//	pirnt(arr, 3, 5);//将arr数组的内容打印出来
//	//arr是数组首元素的地址，是他第一行的地址
//	return 0;
//}
//int main()
//{
//	int a = 7;
//	int* p = &a;
//	printf("%d\n", *p);
//	*p = 10;
//	printf("%d\n", *p);
//
//	return 0;
//}
//交换
//void ex(int* p1, int* p2)
//{
//	int t = *p1;
//	*p1 = *p2;
//	*p2 = t;
//}
//int main()
//{
//	int a = 10;
//	int b = 20;
//	printf("%d %d\n", a, b);
//	ex(&a,&b);
//	printf("%d %d\n", a, b);
//
//	return 0;
//}
//定义一个函数，求数组的最大值和最小值，并返回

void getmaxandmin(int arr[],int sz,int *max,int*min)
{
	*max = arr[0];
	for (int i = 0; i < sz; i++)
	{
		if (arr[i] > *max)
		{
			*max = arr[i];
		}
	}
	*min = arr[0];
	for (int i = 0; i < sz; i++)
	{
		if (arr[i] < *min)
		{
			*min = arr[i];
		}
	}
}

int main()
{
	int arr[] = { 1,2,3,4,5,6,7,8,9 };
	int sz = sizeof arr / sizeof arr[0];
	int max = arr[0];
	int min = arr[0];
	getmaxandmin(arr, sz, &max, &min);
	printf("最大值为：%d\n", max);
	printf("最小值为：%d\n", min);

	return 0;
}